using System;
using System.Collections.Generic;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

using MakeIT.Framework.Util;
using MakeIT.MakeIT.Laundy.Agromotor.Site.Entidades;
using MakeIT.MakeIT.Laundy.Agromotor.Site.Negocios;

namespace MakeIT.MakeIT.Laundy.Agromotor.Site.Apresentacao
{
	public partial class CadastroConteudoestatico : System.Web.UI.Page
	{

		UsuarioVO usuarioVO = null;

		protected void Page_Load(object sender, EventArgs e)
		{
			usuarioVO = (UsuarioVO)this.Session["userActive"];

			if (!IsPostBack)
			{
				Util.HabilitarCampos(false, this.panelCad);

				this.panelConteudoimagem.Enabled = false;
			}

		}

		/// <summary>
		/// Manipula o evento do botão btnSalvar
		/// </summary>
		/// <param name="sender">Objeto disparador do evento</param>
		/// <param name="e">Argumento do evento</param>
		protected void btnSalvar_Click(object sender, EventArgs e)
		{

			//Declara objetos
			ConteudoestaticoVO conteudoestaticoVO = null;
			bool novoRegistro = false;

			try
			{
				//Verifica se o ID é nulo, se sim = cadastro novo
				if (string.IsNullOrEmpty(this.txtCadIdConteudoEstatico.Text))
				{
					conteudoestaticoVO = ConteudoestaticoVO.CreateVO();
					conteudoestaticoVO.cadastro = DateTime.Now;
					conteudoestaticoVO.cadastradoPor = usuarioVO.user;

					novoRegistro = true;

				}
				//Recupera dados para serem alterados
				else
				{
					//Recupera dados
					conteudoestaticoVO = AgromotorsiteDAO.getConteudoestatico(Int32.Parse(this.txtCadIdConteudoEstatico.Text));
				}

                conteudoestaticoVO.conteudo = this.LiteralPagina.Text;
				conteudoestaticoVO.conteudoEdicao = this.EditorCadConteudoEdicao.Content;
				conteudoestaticoVO.nome = this.txtCadNome.Text;
				conteudoestaticoVO.edicao = DateTime.Now;
				conteudoestaticoVO.editadoPor = usuarioVO.user;

				//Chama metodo para salvar ou criar novo registro
				if (novoRegistro)
					conteudoestaticoVO.idConteudoEstatico = (int)AgromotorsiteDAO.newConteudoestatico(conteudoestaticoVO);
				else
					AgromotorsiteDAO.setConteudoestatico(conteudoestaticoVO);

				// Exibe msg de sucesso ao salvar registro
				Util.ExibeAlert(this, "Registro salvo com sucesso!");

				//Popula grid atualizado
				this.btnPesquisa_Click(null, null);

				//Atualiza formulario, apos salvar os dados
				this.txtCadIdConteudoEstatico.Text = conteudoestaticoVO.idConteudoEstatico.ToString();
				this.ltCadastradoPor.Text = conteudoestaticoVO.cadastradoPor;
				this.ltEditadoPor.Text = conteudoestaticoVO.editadoPor;
				this.ltDataCadastro.Text = conteudoestaticoVO.cadastro.ToString("dd/MM/yyyy");
				this.ltDataEdicao.Text = conteudoestaticoVO.edicao.ToString("dd/MM/yyyy");

                this.LiteralNomePagina.Text = conteudoestaticoVO.ToString();
                this.LiteralNomePagina3.Text = conteudoestaticoVO.ToString();
                
                //habilita Conteudoimagem
				if (!this.panelConteudoimagem.Enabled)
				{
					this.ltCadConteudoimagemConteudoestatico.Text = conteudoestaticoVO.ToString();
					Util.HabilitarCampos(false, this.panelConteudoimagem);
					this.panelConteudoimagem.Enabled = true;
					this.btnCadConteudoimagemSalvar.Enabled = false;
					this.btnCadConteudoimagemEditar.Enabled = false;
					this.btnCadConteudoimagemExcluir.Enabled = false;
					this.btnCadConteudoimagemNovo.Enabled = true;
					//Habilita botoes da imagem imagem
					this.btCadConteudoimagemImagemRemover.Enabled = false;
					this.afuCadConteudoimagemImagemUpload.Enabled = false;
					this.btCadConteudoimagemImagemVisualizar.Enabled = false;
				}
			}
			catch (Exception ex)
			{

				throw ex;
			}
		}

		/// <summary>
		/// Manipula o evento do botão btnPesquisa
		/// </summary>
		/// <param name="sender">Objeto disparador do evento</param>
		/// <param name="e">Argumento do evento</param>
		protected void btnPesquisa_Click(object sender, EventArgs e)
		{

			//Declara objetos
			int? idConteudoEstatico = null;
			string nome = null;

			try
			{

				if (!string.IsNullOrEmpty(this.txtIdConteudoEstatico.Text))
				{
					idConteudoEstatico = Int32.Parse(this.txtIdConteudoEstatico.Text);
				}

				if (!string.IsNullOrEmpty(this.txtNome.Text))
				{
					nome = this.txtNome.Text;
				}


				//Recupera a lista de registros segundo a pesquisa
				this.grvResultado.DataSource = AgromotorsiteDAO.getConteudoestaticos(idConteudoEstatico, nome);

				//Vincula os dados
				this.grvResultado.DataBind();
			}
			catch (Exception ex)
			{

				throw ex;
			}
		}

		/// <summary>
		/// Manipula o evento do botão btnCancelar
		/// </summary>
		/// <param name="sender">Objeto disparador do evento</param>
		/// <param name="e">Argumento do evento</param>
		protected void btnCancelar_Click(object sender, EventArgs e)
		{
			//Volta para a tab page de pesquisa
			//this.tabConteudoestatico.ActiveTabIndex = 0;

			// Desabilita os campos para edição
			Util.HabilitarCampos(false, this.panelCad);

			// Destrava botão de edição
			this.btnEditar.Enabled = (!string.IsNullOrEmpty(this.txtCadIdConteudoEstatico.Text));

			// Destrava botão de exclusao
			this.btnExcluir.Enabled = (!string.IsNullOrEmpty(this.txtCadIdConteudoEstatico.Text));

			// Detrava botão de novo
			this.btnNovo.Enabled = true;

			// Desabilita o botão salvar
			this.btnSalvar.Enabled = false;

            // Destrava botão pré-visualização da pagina em edição
            this.btnPreview.Enabled = (!string.IsNullOrEmpty(this.txtCadIdConteudoEstatico.Text));

            // Desabilita botão publicar
            this.btnPublicar.Enabled = false;

            // Desabilita botão copiar do publicado
            this.btnReverter.Enabled = false;


        }

		protected void imgbVisualizar_Click(object sender, ImageClickEventArgs e)
		{
			// Declara objetos
			ConteudoestaticoVO conteudoestaticoVO = null;
			int idConteudoEstatico = 0;

			try
			{
				//Recupera os argumentos com o ID do objeto
				string[] argumentos = ((ImageButton)sender).CommandArgument.Split(';');
				idConteudoEstatico = Int32.Parse(argumentos[0]);

				//Recupera o objeto
				conteudoestaticoVO = AgromotorsiteDAO.getConteudoestatico(idConteudoEstatico);

				this.txtCadIdConteudoEstatico.Text = conteudoestaticoVO.idConteudoEstatico.ToString();
                this.LiteralPagina.Text = conteudoestaticoVO.conteudo;
                this.LiteralEdicao.Text = "";
				this.EditorCadConteudoEdicao.Content = conteudoestaticoVO.conteudoEdicao;
				this.txtCadNome.Text = conteudoestaticoVO.nome;
				this.ltCadastradoPor.Text = conteudoestaticoVO.cadastradoPor;
				this.ltEditadoPor.Text = conteudoestaticoVO.editadoPor;
				this.ltDataCadastro.Text = conteudoestaticoVO.cadastro.ToString("dd/MM/yyyy");
				this.ltDataEdicao.Text = conteudoestaticoVO.edicao.ToString("dd/MM/yyyy");

                this.LiteralNomePagina.Text = conteudoestaticoVO.ToString();
                this.LiteralNomePagina3.Text = conteudoestaticoVO.ToString();

				//recupera Conteudoimagem
				Util.LimparCampos(this.panelConteudoimagem);
				Util.HabilitarCampos(false, this.panelConteudoimagem);
				this.panelConteudoimagem.Enabled = true;
				this.ltCadConteudoimagemConteudoestatico.Text = conteudoestaticoVO.ToString();
				this.ltConteudoimagemCadastradoPor.Text = "";
				this.ltConteudoimagemDataCadastro.Text = "";
				this.ltConteudoimagemDataEdicao.Text = "";
				this.ltConteudoimagemEditadoPor.Text = "";
				this.btnCadConteudoimagemSalvar.Enabled = false;
				this.btnCadConteudoimagemEditar.Enabled = false;
				this.btnCadConteudoimagemExcluir.Enabled = false;
				this.btnCadConteudoimagemNovo.Enabled = true;
				this.btCadConteudoimagemImagemRemover.Enabled = false;
				this.afuCadConteudoimagemImagemUpload.Enabled = false;
				this.btCadConteudoimagemImagemVisualizar.Enabled = false;
                this.grvCadConteudoestaticoxConteudoimagem.DataSource = AgromotorsiteDAO.getConteudoimagems(null, conteudoestaticoVO.idConteudoEstatico);
				this.grvCadConteudoestaticoxConteudoimagem.DataBind();

				//Habilita tab page do cadastro
				this.tabConteudoestatico.ActiveTabIndex = 1;

				//Desabilita campos para edição
				Util.HabilitarCampos(false, this.panelCad);

				//Desabilita botão salvar
				this.btnSalvar.Enabled = false;

				//Habilita botão editar
				this.btnEditar.Enabled = true;

				//Habilita botão excluir
				this.btnExcluir.Enabled = true;

				//Habilita botão novo
				this.btnNovo.Enabled = true;

                //Habilitar botão pré-visualização da pagina em edição
                this.btnPreview.Enabled = true;

                // Desabilita botão publicar
                this.btnPublicar.Enabled = false;

                // Desabilita botão copiar do publicado
                this.btnReverter.Enabled = false;

            }
			catch (Exception ex)
			{

				throw ex;
			}
		}

		// <summary>
		// Manipula o evento editar do web form
		// </summary>
		// <param name="sender">Objeto disparador de evento</param>
		// <param name="e">Argumento do evento</param>
		protected void btnEditar_Click(object sender, EventArgs e)
		{
			// Habilita os campos para edição
			Util.HabilitarCampos(true, this.panelCad);

			// Trava apenas os text box da PK
			this.txtCadIdConteudoEstatico.Enabled = false;

			// Trava botão de edição
			this.btnEditar.Enabled = false;

			// Trava botão de exclusao
			this.btnExcluir.Enabled = false;

			// Trava botão de novo
			this.btnNovo.Enabled = false;

			// Habilita o botão salvar
			this.btnSalvar.Enabled = true;

            // Habilita botão publicar
            this.btnPublicar.Enabled = true;

            // Habilita botão copiar do publicado
            this.btnReverter.Enabled = true;

            this.txtCadNome.Focus();
		}

		protected void btnNovo_Click(object sender, EventArgs e)
		{
			//Limpa formulario, para a entrada de novo registro
			Util.LimparCampos(this.panelCad);
			// Habilita os campos para edição
			Util.HabilitarCampos(true, this.panelCad);

            this.LiteralEdicao.Text = "";
            this.LiteralPagina.Text = "";
            this.LiteralNomePagina.Text = "";
            this.LiteralNomePagina3.Text = "";

            this.ltCadastradoPor.Text = "";
			this.ltEditadoPor.Text = "";
			this.ltDataCadastro.Text = "";
			this.ltDataEdicao.Text = "";

			// Limpa Conteudoimagem
			Util.LimparCampos(this.panelConteudoimagem);
			Util.HabilitarCampos(false, this.panelConteudoimagem);
			this.ltCadConteudoimagemConteudoestatico.Text = "";
			this.ltConteudoimagemCadastradoPor.Text = "";
			this.ltConteudoimagemDataCadastro.Text = "";
			this.ltConteudoimagemDataEdicao.Text = "";
			this.ltConteudoimagemEditadoPor.Text = "";
			this.grvCadConteudoestaticoxConteudoimagem.DataSource = null;
			this.grvCadConteudoestaticoxConteudoimagem.DataBind();
			this.panelConteudoimagem.Enabled = false;
			this.btnCadConteudoimagemSalvar.Enabled = false;
			this.btnCadConteudoimagemEditar.Enabled = false;
			this.btnCadConteudoimagemExcluir.Enabled = false;
			this.btnCadConteudoimagemNovo.Enabled = false;
			this.btCadConteudoimagemImagemRemover.Enabled = false;
			this.afuCadConteudoimagemImagemUpload.Enabled = false;
			this.btCadConteudoimagemImagemVisualizar.Enabled = false;

			// Trava apenas os text box da PK
			this.txtCadIdConteudoEstatico.Enabled = false;

			// Trava botão de edição
			this.btnEditar.Enabled = false;

			// Trava botão de exclusao
			this.btnExcluir.Enabled = false;

			// Trava botão de novo
			this.btnNovo.Enabled = false;

			// Habilita o botão salvar
			this.btnSalvar.Enabled = true;

            // Destrava botão pré-visualização da pagina em edição
            this.btnPreview.Enabled = true;

            // Habilita botão publicar
            this.btnPublicar.Enabled = true;

            // Habilita botão copiar do publicado
            this.btnReverter.Enabled = true;

            this.txtCadNome.Focus();

		}

		protected void btnExcluir_Click(object sender, EventArgs e)
		{
			//Declara objetos
			ConteudoestaticoVO conteudoestaticoVO = null;

			try
			{
				//Cria objeto
				conteudoestaticoVO = ConteudoestaticoVO.CreateVO();
				conteudoestaticoVO.idConteudoEstatico = Int32.Parse(this.txtCadIdConteudoEstatico.Text);

				// Remove Conteudoimagem
                List<ConteudoimagemVO> conteudoimagemVOs = AgromotorsiteDAO.getConteudoimagems(null, conteudoestaticoVO.idConteudoEstatico);
				foreach (ConteudoimagemVO conteudoimagemVO in conteudoimagemVOs)
					AgromotorsiteDAO.delConteudoimagem(conteudoimagemVO);

				//Chama metodo para excluir registro
				AgromotorsiteDAO.delConteudoestatico(conteudoestaticoVO);

				// Exibe msg de sucesso ao salvar registro
				Util.ExibeAlert(this, "Registro excluido com sucesso!");

				//Popula grid atualizado
				this.btnPesquisa_Click(null, null);

				//Limpa formulario, apos salvar os dados
				Util.LimparCampos(this.panelCad);
				//Limpa Conteudoimagem
				Util.LimparCampos(this.panelConteudoimagem);
				Util.HabilitarCampos(false, this.panelConteudoimagem);
				this.panelConteudoimagem.Enabled = false;
				this.ltCadConteudoimagemConteudoestatico.Text = "";
				this.ltConteudoimagemCadastradoPor.Text = "";
				this.ltConteudoimagemDataCadastro.Text = "";
				this.ltConteudoimagemDataEdicao.Text = "";
				this.ltConteudoimagemEditadoPor.Text = "";
				this.grvCadConteudoestaticoxConteudoimagem.DataSource = null;
				this.grvCadConteudoestaticoxConteudoimagem.DataBind();
				this.btnCadConteudoimagemSalvar.Enabled = false;
				this.btnCadConteudoimagemEditar.Enabled = false;
				this.btnCadConteudoimagemExcluir.Enabled = false;
				this.btnCadConteudoimagemNovo.Enabled = false;
				this.btCadConteudoimagemImagemRemover.Enabled = false;
				this.afuCadConteudoimagemImagemUpload.Enabled = false;
				this.btCadConteudoimagemImagemVisualizar.Enabled = false;

                this.LiteralEdicao.Text = "";
                this.LiteralPagina.Text = "";
                this.LiteralNomePagina.Text = "";
                this.LiteralNomePagina3.Text = "";
                
                this.ltCadastradoPor.Text = "";
				this.ltEditadoPor.Text = "";
				this.ltDataCadastro.Text = "";
				this.ltDataEdicao.Text = "";

				// Trava botão de edição
				this.btnEditar.Enabled = false;

				// Trava botão de exclusao
				this.btnExcluir.Enabled = false;

				// Desabilita o botão salvar
				this.btnSalvar.Enabled = false;

				// Habilita o botao novo
				this.btnNovo.Enabled = true;

                // Desabilita botão pré-visualização da pagina em edição
                this.btnPreview.Enabled = false;

                // Destrava botão publicar
                this.btnPublicar.Enabled = false;

                // Desabilita botão copiar do publicado
                this.btnReverter.Enabled = false;

            }
			catch (Exception ex)
			{

				throw ex;
			}
			
		}

        // copia conteudo publicado para o editor
        protected void btnReverter_Click(object sender, EventArgs e)
        {
            this.EditorCadConteudoEdicao.Content = this.LiteralPagina.Text;
        }

        // libera o conteudo em edição para o site
        protected void btnLiberar_Click(object sender, EventArgs e)
        {
            this.LiteralPagina.Text = this.EditorCadConteudoEdicao.Content;
            this.btnSalvar_Click(sender, e);
        }

        // Preview do conteudo em edição para o site
        protected void btnPreview_Click(object sender, EventArgs e)
        {
            string conteudo = imagemTagReplace(this.EditorCadConteudoEdicao.Content);
            //if (nomeDoConteudo.Equals("Home"))
            //    conteudo = "<div style=\"border:solid 1px Blue; text-align:left; padding-bottom:5px; width:650px;\" >" +
            //                  conteudo +
            //               "</div>";
            this.LiteralEdicao.Text = conteudo;
        }
        public static string imagemTagReplace(string html)
        {

            int posIni = 0;
            int posFin = 0;
            string tagImagem = "";
            string[] tags = null;
            while (posIni >= 0)
            {
                posIni = html.IndexOf("[imagem,");
                if (posIni < 0)
                    break;
                posFin = html.IndexOf("]", posIni);
                if (posFin < 0)
                    break;

                tagImagem = html.Substring(posIni + 1, posFin - posIni - 1);
                tags = tagImagem.Split(',');
                if (tags.Length != 5)
                    break;

                string imgTag = "<img src=\"DownConteudoimagemImagem.aspx?idConteudoImagem=" + tags[1] + "&Token=" + DateTime.Now.Ticks.ToString()+"\" ";

                imgTag += "style=\"margin:10px 10px 10px 10px; ";
                if (tags[2].Trim().Length > 0)
                    imgTag += "float:" + (tags[2].Trim().Equals("esq") ? "left" : "right") + "; ";
                imgTag += "\"";
                try
                {
                    if (tags[3].Trim().Length > 0)
                        imgTag += "width=\"" + int.Parse(tags[3]) + "\" ";
                    if (tags[4].Trim().Length > 0)
                        imgTag += "height=\"" + int.Parse(tags[4]) + "\" ";
                }
                catch (Exception ex)
                {
                    break;
                }
                imgTag += " />";

                html = html.Replace("[" + tagImagem + "]", imgTag);

            }
            return html;

        }

        #region Imagens
		protected void ibtPanelFotoClose_Click(object sender, EventArgs e)
		{
			this.PanelFoto.Visible = false;
		}

		#region Imagem Imagem
		protected void btCadConteudoimagemImagemVisualizar_Click(object sender, EventArgs e)
		{
			ConteudoimagemVO conteudoimagemVO = AgromotorsiteDAO.getConteudoimagem(Int32.Parse(this.txtCadConteudoimagemIdConteudoImagem.Text));
			this.ltCadConteudoimagemImagemNome.Text = conteudoimagemVO.imagemNome;
			this.ltCadConteudoimagemImagemMime.Text = conteudoimagemVO.imagemMime;

			this.imgPanelFoto.ImageUrl = "~/DownConteudoimagemImagem.aspx?idConteudoImagem=" + conteudoimagemVO.idConteudoImagem.ToString()+"&controll="+DateTime.Now.Ticks.ToString();
			this.lblPanelFoto.Text = this.ltCadConteudoimagemImagemNome.Text + "( " + this.ltCadConteudoimagemImagemMime.Text + " )";
			this.PanelFoto.Visible = true;
		}
		protected void ProcessafuCadConteudoimagemImagemUpload(object sender, AjaxControlToolkit.AsyncFileUploadEventArgs e)
		{
			// upload da imagem
			if (afuCadConteudoimagemImagemUpload.PostedFile.FileName.Length > 0)
			{
				ConteudoimagemVO conteudoimagemVO = ConteudoimagemVO.CreateVO();
				conteudoimagemVO.idConteudoImagem = Int32.Parse(this.txtCadConteudoimagemIdConteudoImagem.Text);
				conteudoimagemVO.imagemMime = afuCadConteudoimagemImagemUpload.PostedFile.ContentType;
				conteudoimagemVO.imagemNome = afuCadConteudoimagemImagemUpload.PostedFile.FileName;

				System.IO.Stream st = afuCadConteudoimagemImagemUpload.PostedFile.InputStream;
				byte[] fb = new byte[st.Length];

				fb = afuCadConteudoimagemImagemUpload.GetBytesFromStream(st);

				System.Drawing.Image img = Util.byteArrayToImage(fb);
				conteudoimagemVO.imagem = Util.imageToByteArray(Util.MaxSize(img, 800, 600));
				img.Dispose();

				conteudoimagemVO.edicao = DateTime.Now;
				conteudoimagemVO.editadoPor = usuarioVO.user;
				AgromotorsiteDAO.setConteudoimagemImagem(conteudoimagemVO);

			}

		}
		protected void btCadConteudoimagemImagemRemover_Click(object sender, EventArgs e)
		{
			ConteudoimagemVO conteudoimagemVO = ConteudoimagemVO.CreateVO();
			conteudoimagemVO.idConteudoImagem = Int32.Parse(this.txtCadConteudoimagemIdConteudoImagem.Text);
			conteudoimagemVO.imagem = null;
			conteudoimagemVO.imagemMime = null;
			conteudoimagemVO.imagemNome = null;
			AgromotorsiteDAO.setConteudoimagemImagem(conteudoimagemVO);
			this.ltCadConteudoimagemImagemMime.Text = "";
			this.ltCadConteudoimagemImagemNome.Text = "";

			// Exibe msg de sucesso ao salvar registro
			Util.ExibeAlert(this, "Imagem removida!");
		}

		#endregion
		#endregion
		#region ConteudoestaticoXConteudoimagem
		protected void btnCadConteudoimagemSalvar_Click(object sender, EventArgs e)
		{

			//Declara objetos
			ConteudoimagemVO conteudoimagemVO = null;
			bool novoRegistro = false;

			try
			{
				//Verifica se o ID é nulo, se sim = cadastro novo
				if (string.IsNullOrEmpty(this.txtCadConteudoimagemIdConteudoImagem.Text))
				{
					conteudoimagemVO = ConteudoimagemVO.CreateVO();
					conteudoimagemVO.cadastro = DateTime.Now;
					conteudoimagemVO.cadastradoPor = usuarioVO.user;
                    conteudoimagemVO.idConteudoEstatico = Int32.Parse(this.txtCadIdConteudoEstatico.Text);

					novoRegistro = true;

				}
				//Recupera dados para serem alterados
				else
				{
					//Recupera dados
					conteudoimagemVO = AgromotorsiteDAO.getConteudoimagem(Int32.Parse(this.txtCadConteudoimagemIdConteudoImagem.Text));
				}

				conteudoimagemVO.edicao = DateTime.Now;
				conteudoimagemVO.editadoPor = usuarioVO.user;

				//Chama metodo para salvar ou criar novo registro
				if (novoRegistro)
					conteudoimagemVO.idConteudoImagem = (int)AgromotorsiteDAO.newConteudoimagem(conteudoimagemVO);
				else
					AgromotorsiteDAO.setConteudoimagem(conteudoimagemVO);

				// Exibe msg de sucesso ao salvar registro
				Util.ExibeAlert(this, "Registro salvo com sucesso!");

				//Popula grid atualizado
				this.btnPesquisa_Click(null, null);

				//Atualiza formulario, apos salvar os dados
				this.txtCadConteudoimagemIdConteudoImagem.Text = conteudoimagemVO.idConteudoImagem.ToString();
				this.ltCadConteudoimagemImagemNome.Text = conteudoimagemVO.imagemNome;
				this.ltCadConteudoimagemImagemMime.Text = conteudoimagemVO.imagemMime;
				this.ltConteudoimagemCadastradoPor.Text = conteudoimagemVO.cadastradoPor;
				this.ltConteudoimagemEditadoPor.Text = conteudoimagemVO.editadoPor;
				this.ltConteudoimagemDataCadastro.Text = conteudoimagemVO.cadastro.ToString("dd/MM/yyyy");
				this.ltConteudoimagemDataEdicao.Text = conteudoimagemVO.edicao.ToString("dd/MM/yyyy");

				//Habilita botoes da imagem imagem
				this.btCadConteudoimagemImagemRemover.Enabled = true;
				this.afuCadConteudoimagemImagemUpload.Enabled = true;
				this.btCadConteudoimagemImagemVisualizar.Enabled = true;
				this.grvCadConteudoestaticoxConteudoimagem.DataSource = AgromotorsiteDAO.getConteudoimagems(null, conteudoimagemVO.idConteudoEstatico);
				this.grvCadConteudoestaticoxConteudoimagem.DataBind();

			}
			catch (Exception ex)
			{

				throw ex;
			}
		}

		protected void btnCadConteudoimagemCancelar_Click(object sender, EventArgs e)
		{
			//Volta para a tab page de pesquisa
			//this.tabConteudoestatico.ActiveTabIndex = 0;

			// Desabilita os campos para edição
			Util.HabilitarCampos(false, this.panelConteudoimagem);

			// Destrava botão de edição
			this.btnCadConteudoimagemEditar.Enabled = (!string.IsNullOrEmpty(this.txtCadConteudoimagemIdConteudoImagem.Text));

			// Destrava botão de exclusao
			this.btnCadConteudoimagemExcluir.Enabled = (!string.IsNullOrEmpty(this.txtCadConteudoimagemIdConteudoImagem.Text));

			// Detrava botão de novo
			this.btnCadConteudoimagemNovo.Enabled = true;

			// Desabilita o botão salvar
			this.btnCadConteudoimagemSalvar.Enabled = false;

			// Desabilita botões da imagem imagem
			this.btCadConteudoimagemImagemRemover.Enabled = false;
			this.afuCadConteudoimagemImagemUpload.Enabled = false;
			this.btCadConteudoimagemImagemVisualizar.Enabled = (!string.IsNullOrEmpty(this.ltCadConteudoimagemImagemNome.Text));

		}

		protected void btnCadConteudoimagemEditar_Click(object sender, EventArgs e)
		{
			// Habilita os campos para edição
			Util.HabilitarCampos(true, this.panelConteudoimagem);

			// Trava apenas os text box da PK
			this.txtCadConteudoimagemIdConteudoImagem.Enabled = false;

			// Trava botão de edição
			this.btnCadConteudoimagemEditar.Enabled = false;

			// Trava botão de exclusao
			this.btnCadConteudoimagemExcluir.Enabled = false;

			// Trava botão de novo
			this.btnCadConteudoimagemNovo.Enabled = false;

			// Habilita o botão salvar
			this.btnCadConteudoimagemSalvar.Enabled = true;

			// Habilita botões da imagem imagem
			this.btCadConteudoimagemImagemRemover.Enabled = true;
			this.afuCadConteudoimagemImagemUpload.Enabled = true;
			this.btCadConteudoimagemImagemVisualizar.Enabled = true;

		}

		protected void btnCadConteudoimagemExcluir_Click(object sender, EventArgs e)
		{
			//Declara objetos
			ConteudoimagemVO conteudoimagemVO = null;

			try
			{
				//Cria objeto
				conteudoimagemVO = ConteudoimagemVO.CreateVO();
				conteudoimagemVO.idConteudoImagem = Int32.Parse(this.txtCadConteudoimagemIdConteudoImagem.Text);

				//Chama metodo para excluir registro
				AgromotorsiteDAO.delConteudoimagem(conteudoimagemVO);

				// Exibe msg de sucesso ao salvar registro
				Util.ExibeAlert(this, "Registro excluido com sucesso!");

				//Limpa formulario, apos salvar os dados
				Util.LimparCampos(this.panelConteudoimagem);
				Util.HabilitarCampos(false, this.panelConteudoimagem);
				this.ltCadConteudoimagemImagemNome.Text = "";
				this.ltCadConteudoimagemImagemMime.Text = "";
                this.grvCadConteudoestaticoxConteudoimagem.DataSource = AgromotorsiteDAO.getConteudoimagems(null, Int32.Parse(this.txtCadIdConteudoEstatico.Text));
				this.grvCadConteudoestaticoxConteudoimagem.DataBind();

				this.ltConteudoimagemCadastradoPor.Text = "";
				this.ltConteudoimagemEditadoPor.Text = "";
				this.ltConteudoimagemDataCadastro.Text = "";
				this.ltConteudoimagemDataEdicao.Text = "";

				// Trava botão de edição
				this.btnCadConteudoimagemEditar.Enabled = false;

				// Trava botão de exclusao
				this.btnCadConteudoimagemExcluir.Enabled = false;

				// Desabilita o botão salvar
				this.btnCadConteudoimagemSalvar.Enabled = false;

				// Habilita o botao novo
				this.btnCadConteudoimagemNovo.Enabled = true;

				// Desabilita botões da imagem imagem
				this.btCadConteudoimagemImagemRemover.Enabled = false;
				this.afuCadConteudoimagemImagemUpload.Enabled = false;
				this.btCadConteudoimagemImagemVisualizar.Enabled = false;

			}
			catch (Exception ex)
			{

				throw ex;
			}
			
		}
		protected void btnCadConteudoimagemNovo_Click(object sender, EventArgs e)
		{
			//Limpa formulario, para a entrada de novo registro
			Util.LimparCampos(this.panelConteudoimagem);
			// Habilita os campos para edição
		    Util.HabilitarCampos(true, this.panelConteudoimagem);

			this.ltCadConteudoimagemImagemNome.Text = "";
			this.ltCadConteudoimagemImagemMime.Text = "";
			this.ltConteudoimagemCadastradoPor.Text = "";
			this.ltConteudoimagemEditadoPor.Text = "";
			this.ltConteudoimagemDataCadastro.Text = "";
			this.ltConteudoimagemDataEdicao.Text = "";

			// Trava apenas os text box da PK
			this.txtCadConteudoimagemIdConteudoImagem.Enabled = false;

			// Trava botão de edição
			this.btnCadConteudoimagemEditar.Enabled = false;

			// Trava botão de exclusao
			this.btnCadConteudoimagemExcluir.Enabled = false;

			// Trava botão de novo
			this.btnCadConteudoimagemNovo.Enabled = false;

			// Habilita o botão salvar
			this.btnCadConteudoimagemSalvar.Enabled = true;

			// Desabilita botões da imagem imagem
			this.btCadConteudoimagemImagemRemover.Enabled = false;
			this.afuCadConteudoimagemImagemUpload.Enabled = false;
			this.btCadConteudoimagemImagemVisualizar.Enabled = false;

            btnCadConteudoimagemSalvar_Click(null, null);
		}

		protected void imgbCadConteudoimagemVisualizar_Click(object sender, ImageClickEventArgs e)
		{
			// Declara objetos
			ConteudoimagemVO conteudoimagemVO = null;
			int idConteudoImagem = 0;

			try
			{
				//Recupera os argumentos com o ID do objeto
				string[] argumentos = ((ImageButton)sender).CommandArgument.Split(';');
				idConteudoImagem = Int32.Parse(argumentos[0]);

				//Recupera o objeto
				conteudoimagemVO = AgromotorsiteDAO.getConteudoimagem(idConteudoImagem);

				this.txtCadConteudoimagemIdConteudoImagem.Text = conteudoimagemVO.idConteudoImagem.ToString();
				this.ltCadConteudoimagemImagemNome.Text = conteudoimagemVO.imagemNome;
				this.ltCadConteudoimagemImagemMime.Text = conteudoimagemVO.imagemMime;
				this.ltConteudoimagemCadastradoPor.Text = conteudoimagemVO.cadastradoPor;
				this.ltConteudoimagemEditadoPor.Text = conteudoimagemVO.editadoPor;
				this.ltConteudoimagemDataCadastro.Text = conteudoimagemVO.cadastro.ToString("dd/MM/yyyy");
				this.ltConteudoimagemDataEdicao.Text = conteudoimagemVO.edicao.ToString("dd/MM/yyyy");

				//Desabilita campos para edição
				Util.HabilitarCampos(false, this.panelConteudoimagem);

				//Desabilita botão salvar
				this.btnCadConteudoimagemSalvar.Enabled = false;

				//Habilita botão editar
				this.btnCadConteudoimagemEditar.Enabled = true;

				//Habilita botão excluir
				this.btnCadConteudoimagemExcluir.Enabled = true;

				//Habilita botão novo
				this.btnCadConteudoimagemNovo.Enabled = true;

				// Desabilita botões da imagem imagem
				this.btCadConteudoimagemImagemRemover.Enabled = false;
				this.afuCadConteudoimagemImagemUpload.Enabled = false;
				this.btCadConteudoimagemImagemVisualizar.Enabled = (!string.IsNullOrEmpty(this.ltCadConteudoimagemImagemNome.Text));

			}
			catch (Exception ex)
			{

				throw ex;
			}
		}

		#endregion

	}
}
